home *** CD-ROM | disk | FTP | other *** search
- --------------------------------------------------------------------------
- PRELUDE 1.0 -- UNIVERSAL INSTALLATION UTILITY -- SICHEMSOFT -- NETHERLANDS
- --------------------------------------------------------------------------
-
-
- INTRO
-
- PRELUDE is a simple but good looking generic installation utility. It gives
- your users a professional first impression of your products. You build your
- distribution disks as if you were using an old fashioned install.bat file.
- You create a simple installation script, copy that and install.exe to the
- first disk and presto. Key features of PRELUDE are:
-
- - DOS text version, DOS graphics version and Windows version of install.exe
-
- - professional looking installation screens in graphics or text mode
-
- - (human) language independent !!!
-
- - checks available memory, disk space, graphics adapter
-
- - warns against overwrite of existing directories
-
- - supports up to 6 different destination directories
-
- - allows users to select a destination other than your default
-
- - prompts for correct disk and refuses wrong one
-
- - displays text files (e.g. read.me) if desired
-
- - runs any program as a daughter process (e.g. self extracting files)
-
- - allows users to abort the installation at any time
-
-
- --------------------------------------------------------------------------
-
-
- INSTALLATION
-
- Copy all files to a temporary directory, make this the current directory and
- type INSTALL to make PRELUDE install itself. This is an example installation.
- You will be asked if you want to install LINGUA as well. You need this for
- creating language independent installations. After installation you can remove
- the temporary directory. Do NOT use the temporary directory as the directory
- to install PRELUDE in.
- The programs should run on any IBM-PC compatible computer with at least 512KB
- memory and running under DOS 3.x or later. For the DOS graphics version
- an EGA, VGA or Hercules adapter is required. If such an adapter is not found,
- the installation program uses text mode. A mouse is recommended but not
- required.
-
- --------------------------------------------------------------------------
-
-
- SHAREWARE NOTICE
-
- The PRELUDE package is provided as is. There are no warranties expressed or
- implied. PRELUDE is distributed as shareware. You may use it without charge
- on a trial basis to determine its suitability for you. If you intend to use
- it for the distribution of your own software, you must purchase a registered
- copy for $50. A registered copy has no shareware message but a welcoming
- message according to your wishes. For registration print the file REGISTER.TXT
- and send it with payment to:
-
- SichemSoft VoF
- Roghorst 160
- 6708 KS Wageningen
- Netherlands
-
- --------------------------------------------------------------------------
-
-
- COPYRIGHTS
-
- PRELUDE is (C) SichemSoft, Roghorst 160, 6708 KS Wageningen, Netherlands.
- PRELUDE was written in Borland C++ 3.1 and uses Zinc Application Framework
- 3.6 for it's GUI. PRELUDE uses the SPAWNO routines by Ralf Brown to minimize
- memory use while running other programs. The executables were compressed
- using LZEXE of Fabrice Bellard.
-
- --------------------------------------------------------------------------
-
-
- FILES
-
- PRELUDE.DOC Documentation
- REGISTER.TXT Registration form
- PRELUDE.EXE Installation script encoding utility
- TESTFIL.EXE Test program to check encoded script
- INSTALL.EXE Installation program - DOS graphics version
- TINSTALL.EXE Installation program - DOS text version
- WINSTALL.EXE Installation program - Windows 3.1 version
- INSTALL.SCR Install script example (text file)
- INSTALL.FIL Install script example (binary file)
- INSTALL.TXT Install's own dialog text (text file)
- INSTALL.ETF Install's own dialog text (binary file)
- OEM2ISO.EXE Text conversion utility
- LINGUA13.EXE Self extracting international language support package
-
- --------------------------------------------------------------------------
-
-
- USAGE
-
- Using any ascii text editor, create an installation script according to the
- syntax described below. Call this INSTALL.SCR. Then run PRELUDE (with no
- parameters). If all goes well a binary encoded file INSTALL.FIL is created.
- Copy this, plus one of the ?INSTALL.EXE's to the first floppy. Also, copy
- INSTALL.ETF to this floppy. This contains all INSTALL's own dialog text
- and was generated from INSTALL.TXT with our utility LINGUA (see below under
- International Language Support). You can choose from INSTALL.EXE (the DOS
- graphics version), TINSTALL.EXE (the DOS text version), and WINSTALL.EXE
- (the Windows 3.1 version). Be sure to rename your choice to INSTALL.EXE
- on the floppy if necessary. You may use the provided INSTALL.SCR as a
- template for your own scripts.
- NOTE: At present the PRELUDE package only takes care of the installation
- part, not of the diskette preparation part. We use Opticopy for this.
-
- --------------------------------------------------------------------------
-
-
- INTERNATIONAL LANGUAGE SUPPORT
-
- The INSTALL.ETF file was created from INSTALL.TXT with LINGUA. The current
- version of this package is included with PRELUDE. See LINGUA.DOC for details.
- You can translate INSTALL.TXT to your language of choice and put the resulting
- INSTALL.ETF on your first disk. Now INSTALL speaks that language. If this
- language uses diacritical characters (like â or é) you must first convert your
- INSTALL.TXT with OEM2ISO because INSTALL does not use the IBM character set
- but the ISO 8859 set. This allows for one INSTALL.FIL that can be used by
- both the Windows and the DOS version.
-
-
- --------------------------------------------------------------------------
-
-
- SCRIPT SYNTAX
-
- While writing an installation script the following rules must be observed:
- - A script file may contain a maximum number of 200 commands
- - Comment lines must start with * on the first position
- - Lines should be no more than 250 characters long
- - Labels must start with : on the first position and consist of one word
-
-
- Startup commands
- ----------------
-
- PACKAGE name
-
- This command defines the name of the package that is about to be
- installed. This name will be displayed in the title bar of the main window
- and in various dialogs and should not be too long. This command is required
- and must be the first command in the script. Examples:
-
- PACKAGE Lingua
- PACKAGE Universal Puchcard System 17.6
-
-
- MEMORY conventional [extended]
-
- If you use this command, it will be verified if the target computer has enough
- memory to execute your program(s). If the available memory is not sufficient,
- a warning message is displayed. The user can then choose to abort or continue.
- The numbers in the MEMORY command for conventional and, optionally, extended
- memory must be given in kilobytes. Examples:
-
- MEMORY 384
- MEMORY 512 2048
-
- Note 1: the Windows version ignores the MEMORY command.
- Note 2: the DOS version determines if the package is installed on a network
- drive. If so, the MEMORY command is ignored.
-
-
- VIDEO [ HERCULES and/or CGA and/or EGA and/or VGA ]
-
- The VIDEO command verifies that the target machine has the right kind of video
- adapter. In the list you may use either or all of the following: HERCULES,
- CGA, EGA, VGA. If one of the adapters in the list is not found, a warning
- message is issued. Examples:
-
- VIDEO EGA HERCULES
- VIDEO VGA
-
- Note 1: the Windows version ignores the VIDEO command.
- Note 2: the DOS version determines if the package is installed on a network
- drive. If so, the VIDEO command is ignored.
-
-
- NETWORK
-
- To notify INSTALL that this will be a network installation and that VIDEO
- and MEMORY commands should be ignored. A warning message is issued if no
- NETBIOS is detected.
-
-
- DESTINATION mnemonic path space name
-
- The DESTINATION command lets you define what default destination directory
- should be displayed in the field(s) that the user can edit if he/she so wishes
- before the installation is started. A maximum of 6 DESTINATION commands is
- allowed. The mnemonic parameter serves as a placeholder for the directories
- that the user chooses. These mnemomics can then be used in COPY, CHDIR, RUN,
- DISPLAY and EXIST commands. The path parameter defines the default destination
- path. The space parameter is a number that represents kilobytes of required
- space. If (one of) the drive(s) is short of space, a warning message is the
- result. As fourth parameter, a name must be given to display in the path
- selection dialog. There must at least be one DESTINATION command in
- install.fil. If there is more than one DESTINATION command, the user will be
- given the opportunity to select parts to install. All DESTINATION commands
- must be grouped together and must precede any COPY, CHDIR, RUN, DISPLAY and
- EXIST commands. Examples:
-
- DESTINATION EXECS c:\moonshine 500 Executables
- DESTINATION EXTUTL c:\moonshine\still 300 Examples and tutorial
- DESTINATION DATA c:\moonshine\data 800 Data files
-
-
- Sequential commands
- -------------------
-
- VOLUME label name
-
- The VOLUME command prompts for a specified disk. It checks the volume label
- and reprompts if necessary. The label parameter is the exact volume label of
- the requested disk, the name parameter should be the name on the diskette
- label, so the user can identify the correct disk. If this disk is already
- in the drive when the VOLUME command is executed, no messages are given and
- PRELUDE will proceed to the next command immediately. Example:
-
- VOLUME LINGO_2 Disk 2 of 2
-
- Note: When installing from hard disk the VOLUME command is ignored.
-
-
- COPY source destination
-
- The COPY command is used to copy one or more files from the distribution disks
- to their respective destination directory. You can use the normal DOS syntax,
- but use the path mnemonics of the DESTINATION command for the destination
- drive/path names. To distinct the mnemonics from real names, a $ must be
- prepended. Also, the $SOURCE mnemonic may be used. Do NOT give file names in
- the destination path. If no path mnemonic is given, the current working
- diretcory is used. Examples:
-
- COPY $SOURCE\*.exe $EXECS
- COPY $SOURCE\read.me $EXTUTL\docs
-
-
- TEXT [ X ]
- ENDTEXT
-
- The text between the TEXT and ENDTEXT commands is displayed on the
- screen for the user to read until a key is pressed. If the X parameter
- is used, the user has the opportunity to abort at this point. Example:
-
- TEXT X
- You will be asked for your company name and serial number during this
- installation procedure. Be sure to have them ready before you proceed.
- ENDTEXT
-
-
- CHDIR directory
-
- The CHDIR command changes the current working directory to the one given.
- The path mnemonics may be used. Examples:
-
- CHDIR c:\test
- CHDIR $EXECS\bin
-
-
- DISPLAY filename
-
- The contents of an entire file can be displayed in a scrollable window
- with the DISPLAY command. The filename may contain a path mnemonic. If no
- path is used the current directory will be searched for the file.
- Examples:
-
- DISPLAY read.me
- DISPLAY $EXECS\info.doc
-
-
- RUN IO/NOIO programname {parameter}
-
- The RUN command executes any program as a daugther process ("spawn").
- The exit status of the program can be tested and acted upon by means of the
- IF command (see below). The .exe or .com extension must be given in the
- command. The IO/NOIO parameter determines if the program will do console i/o
- of its own or not. If IO is chosen, the installation display is cleared before
- the program is executed and restored after it has finished. If NOIO is chosen,
- a message like "Running AUTHORIZ" is displayed and even output to stdout that
- might come from the spawned program is suppressed. Examples:
-
- RUN IO datapack.exe
- RUN NOIO $EXECS\authoriz.exe
-
-
- INPUT text
-
- You can ask the user for one line of input. Afterwards the input is available
- by use of the $INPUT mnemonic. This mnemonic may be used in the ERROR,
- QUESTION and RUN commands.
-
- INPUT Which show would you like to see?
- RUN IO $INPUT.exe
-
-
- QUESTION text
-
- You can ask the user a question which can be answered by Yes or No.
- After that, the IF command (see below) can be used to act upon the answer.
- A Yes answer results in an exit status of 1 and a No answer results in an
- exit status of 0. Example:
-
- RUN myprog
- IF 0 ok
- QUESTION Do you want to continue?
- IF 0 abort
- : ok
- ..
- :abort
- STOP
-
-
- ERROR text
-
- If a fatal error occured (e.g. during the execution of a RUN command), you
- must be able to notify the user of this. The ERROR command displays an
- error message and aborts the installation after the user has pressed a key.
- Example:
-
- RUN murphy
- IF 0 ok
- ERROR Murphy's Law has done it again!
- * installation aborts automatically
- :ok
-
-
- Control commands
- ----------------
-
- EXIST name
-
- The EXIST command verifies if a specified file exists. The path mnemonics
- may be used. If the file exists an exit status of 1 is the result, and 0
- otherwise. Example:
-
- EXIST $UTIL\transfer.exe
- IF 1 ok
- ERROR TRANSFER.EXE does not exist
- :ok
-
-
- IF [operator]value label
-
- After a RUN or QUESTION command finishes the exit status can be tested by the
- IF command. This works somewhat like the errorlevel testing in batch files. The
- exit status is compared to the given value according to the operator. If this
- comparison evaluates to TRUE, execution of install.fil continues from the
- given label, otherwise the next command is executed. The label parameter must
- refer to label a in the same script. The operators that can be used are: =, =>,
- >, <, <=, <>. If the operator is omitted, = is assumed. There must be no space
- between the operator and the value! Examples:
-
- IF 5 error
- IF >=3 warning
- IF <2 exit
-
-
- GOTO label
-
- The ugly GOTO command jumps to the command after the label. A label is any
- word on a line of its own preceded by a :. Example:
-
- RUN decomp blabla.z
- IF >=1 exit
- RUN blabla
- GOTO ok
- :exit
- TEXT
- Goodbye!
- ENDTEXT
- STOP
- :ok
- DONE
- DISPLAY read.me
-
-
- STOP
-
- The STOP command aborts the installation. Example: see QUESTION and GOTO.
-
-
- DONE
-
- The DONE command deletes the window that shows the installation progression.
- After that, e.g. a readme.txt file can be displayed. Example: see GOTO.
-
-
- --------------------------------------------------------------------------